Skip to content

网址:https://ww2.mathworks.cn/help/signal/gs/the-pulstran-function.html?searchHighlight=pulstran&s_tid=srchtitle_pulstran_2
描述:本案例由1个示例构成:

-

针对以上案例,采用Python语言实现。

-

该脉冲序列定义为具有 50 kHz 的采样率、10 ms 的脉冲序列长度和 1 kHz 的脉冲重复率。T 指定脉冲序列的采样时刻。D 在第一列中指定每个脉冲重复的延迟,在第二列中指定每个重复的可选衰减。要构造该脉冲序列,将 gauspuls 函数的名称以及附加参数(用于指定带宽为 50% 的 10 kHz 高斯脉冲)传递给 pulstran。

python
from scipy import signal
import matplotlib.pyplot as plt
import numpy as np
T = np.arange(0, 10e-3 + 1/50e3, 1/50e3)
D1 = np.arange(0, 10e-3 + 1/1e3, 1/1e3)
D2 = np.array([0.8**0, 0.8**1, 0.8**2, 0.8**3, 0.8**4, 0.8**5, 0.8**6, 0.8**7, 0.8**8, 0.8**9, 0.8**10])
print(D1)
gauspuls = signal.gausspulse(T-0.002, fc=10e3)
print(D1[1])
Y = 0
for i in range(11):
    Y = Y + D2[i]*signal.gausspulse(T-D1[i], fc=10e3)
plt.plot(T, Y)
[0.    0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.01 ]
0.001





[<matplotlib.lines.Line2D at 0x252b1252430>]

png